package cn.px.dao.mapper.sqarepartmanage;

import cn.px.dao.config.MyMapper;
import cn.px.dao.dto.sqarepartmanage.SparePartInfoDTO;
import cn.px.dao.entity.sqarepartmanage.SparePartInfo;
import cn.px.dao.vo.query.sparepartmanage.SparePartInfoVO;
import org.springframework.stereotype.Component;

import java.util.List;


/**
 * @Description 备件基础信息 mapper
 * @author 品讯科技
 * @date 2024-08
 * @Version Copyright (c) 2019,北京乾元坤和科技有限公司 All rights reserved.
 */
@Component
public interface SparePartInfoMapper extends MyMapper<SparePartInfo> {
    SparePartInfoVO getSpareInfoVOById(String id);

    List<SparePartInfoVO> getInOrOut(SparePartInfoDTO dto);

    /**
     * 分页查询
     * @param dto
     * @return
     */
    List<SparePartInfoVO> selectPageList(SparePartInfoDTO dto);

    /**
     * 根据主键查询
     * @param id
     * @return
     */
    SparePartInfo selectById(Object id);

    /**
     * 查询name
     * @param id
     * @return
     */
    String selectNameById(Object id);

    /**
     * 查询型号库的备件信息
     * @param modelId
     * @return
     */
    List<SparePartInfoVO> selectSpareInfoList(String modelId);

    void updateBatch(List<SparePartInfoVO> addItems);

    List<SparePartInfoVO> selectSpareInfoListBySbId(String sbId);

    String selectMaxNo(String typeId);

    /**
     * 查询设备关联的备件信息
     * @param model
     * @return
     */
    List<SparePartInfoVO> getSpareListBySbInfo(SparePartInfoDTO model);
}
